#pragma once
#include "DXAMLCommon.h"

class IPALMalloc
{
public:
	virtual HRESULT STDMETHODCALLTYPE QueryInterface(XGUID iid, void **ppObject) = 0;
	virtual unsigned int STDMETHODCALLTYPE AddRef() = 0;
	virtual unsigned int STDMETHODCALLTYPE Release() = 0;
	virtual void * STDMETHODCALLTYPE Alloc(unsigned int cbSize) = 0;
	virtual void * STDMETHODCALLTYPE Realloc(void *pAddress, unsigned int cbSize) = 0;
	virtual void  STDMETHODCALLTYPE Free(void *pAddress) = 0;
	virtual unsigned int STDMETHODCALLTYPE GetSize(void *pAddress) = 0;
	virtual HRESULT STDMETHODCALLTYPE DidAlloc(void *pAddress) = 0;
	virtual void STDMETHODCALLTYPE HeapMinimize() = 0;
};